package cn.topevery.garden.framework.util;


import org.apache.commons.lang3.StringUtils;

import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;

/**
 * 日期工具类
 *
 * @author LiuHui
 * @date 2021/4/22 17:22
 */
public class DateUtil {

    /**
     * 获取两个日期之间的所有日期
     *
     * @param begin 开始日期
     * @param end   结束日期
     * @return 开始与结束之间的所以日期，包括起止
     */
    public static List<LocalDate> getMiddleDate(LocalDate begin, LocalDate end) {
        List<LocalDate> localDateList = new ArrayList<>();
        long length = end.toEpochDay() - begin.toEpochDay();
        for (long i = length; i >= 0; i--) {
            localDateList.add(end.minusDays(i));
        }
        return localDateList;
    }

    /**
     * 获取结束日期最后一秒
     *
     * @param day
     * @return
     */
    public static String lastSecondOfDay(String day) {
        String result = day;
        if (StringUtils.isNotEmpty(day) && day.length() == 10) {
            result += " 23:59:59";
        }
        return result;
    }
}
